Conversation
Signed-off-by: Milen Pivchev <milen.pivchev@gmail.com>
There was a problem hiding this comment.
Pull Request Overview
This pull request adds support for "busy" status in the user status feature, expanding the existing status options (online, away, do not disturb, invisible) with a new busy status when the server capability supports it. The PR also migrates from custom asset images to SF Symbols for status icons.
- Adds busy status functionality with conditional display based on server capabilities
- Replaces custom status icons with SF Symbols for better system integration
- Updates UI layouts to accommodate the new busy status option
Reviewed Changes
Copilot reviewed 14 out of 19 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| NCUtility+Image.swift | Updates getUserStatus function to return color information and adds busy status handling with SF Symbols |
| NCUserStatus.swift | Adds busy status UI elements and action handler with capability-based visibility |
| NCUserStatus.storyboard | Adds busy status view and adjusts layout constraints |
| Localizable.strings | Adds localization for busy status text |
| Multiple image asset files | Removes custom status icon assets (replaced by SF Symbols) |
| UserStatusView.swift | Adds new SwiftUI view file (appears to be placeholder/test code) |
| NCAccountSettingsView.swift | Updates to use new status color information |
| NCAccountSettingsModel.swift | Updates getUserStatus return type to include color |
| project.pbxproj | Adds new Swift file to project |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
| <action selector="actionBusy:" destination="Y6W-OH-hqX" eventType="touchUpInside" id="fDm-Lt-Z3S"/> | ||
| </connections> | ||
| </button> | ||
| <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="userStatusOnline" translatesAutoresizingMaskIntoConstraints="NO" id="HvF-RO-lj0"> |
There was a problem hiding this comment.
The busy status imageView still references the old 'userStatusOnline' asset image instead of being configured for SF Symbols like the code expects. This will cause the wrong icon to display or a missing image error.
| <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="userStatusOnline" translatesAutoresizingMaskIntoConstraints="NO" id="HvF-RO-lj0"> | |
| <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" systemName="circle.fill" translatesAutoresizingMaskIntoConstraints="NO" id="HvF-RO-lj0"> |
Signed-off-by: Milen Pivchev <milen.pivchev@gmail.com>
Signed-off-by: Milen Pivchev <milen.pivchev@gmail.com>
Prerequisite: nextcloud/NextcloudKit#189
Adds support for busy status if capability exists.
With support:
Without support:
Also tested on iPad:
Constraints are adjusted to account for new view.
Tested opening keyboard on emoji and status change, and it still focuses successfully: